<?php
abstract class HTML_Fluent_XHTML_Base {

    /**
     * Create a new root element 'a'
     *
     * @return HTML_Fluent_XHTML_Element_A
     */
    public function a() {
        return $this->factory->newElement('a', func_get_args());
    }

    /**
     * Create a new root element 'abbr'
     *
     * @return HTML_Fluent_XHTML_Element_ABBR
     */
    public function abbr() {
        return $this->factory->newElement('abbr', func_get_args());
    }

    /**
     * Create a new root element 'acronym'
     *
     * @return HTML_Fluent_XHTML_Element_ACRONYM
     */
    public function acronym() {
        return $this->factory->newElement('acronym', func_get_args());
    }

    /**
     * Create a new root element 'address'
     *
     * @return HTML_Fluent_XHTML_Element_ADDRESS
     */
    public function address() {
        return $this->factory->newElement('address', func_get_args());
    }

    /**
     * Create a new root element 'area'
     *
     * @return HTML_Fluent_XHTML_Element_AREA
     */
    public function area() {
        return $this->factory->newElement('area', func_get_args());
    }

    /**
     * Create a new root element 'b'
     *
     * @return HTML_Fluent_XHTML_Element_B
     */
    public function b() {
        return $this->factory->newElement('b', func_get_args());
    }

    /**
     * Create a new root element 'base'
     *
     * @return HTML_Fluent_XHTML_Element_BASE
     */
    public function base() {
        return $this->factory->newElement('base', func_get_args());
    }

    /**
     * Create a new root element 'bdo'
     *
     * @return HTML_Fluent_XHTML_Element_BDO
     */
    public function bdo() {
        return $this->factory->newElement('bdo', func_get_args());
    }

    /**
     * Create a new root element 'big'
     *
     * @return HTML_Fluent_XHTML_Element_BIG
     */
    public function big() {
        return $this->factory->newElement('big', func_get_args());
    }

    /**
     * Create a new root element 'blockquote'
     *
     * @return HTML_Fluent_XHTML_Element_BLOCKQUOTE
     */
    public function blockquote() {
        return $this->factory->newElement('blockquote', func_get_args());
    }

    /**
     * Create a new root element 'body'
     *
     * @return HTML_Fluent_XHTML_Element_BODY
     */
    public function body() {
        return $this->factory->newElement('body', func_get_args());
    }

    /**
     * Create a new root element 'br'
     *
     * @return HTML_Fluent_XHTML_Element_BR
     */
    public function br() {
        return $this->factory->newElement('br', func_get_args());
    }

    /**
     * Create a new root element 'button'
     *
     * @return HTML_Fluent_XHTML_Element_BUTTON
     */
    public function button() {
        return $this->factory->newElement('button', func_get_args());
    }

    /**
     * Create a new root element 'caption'
     *
     * @return HTML_Fluent_XHTML_Element_CAPTION
     */
    public function caption() {
        return $this->factory->newElement('caption', func_get_args());
    }

    /**
     * Create a new root element 'cite'
     *
     * @return HTML_Fluent_XHTML_Element_CITE
     */
    public function cite() {
        return $this->factory->newElement('cite', func_get_args());
    }

    /**
     * Create a new root element 'code'
     *
     * @return HTML_Fluent_XHTML_Element_CODE
     */
    public function code() {
        return $this->factory->newElement('code', func_get_args());
    }

    /**
     * Create a new root element 'col'
     *
     * @return HTML_Fluent_XHTML_Element_COL
     */
    public function col() {
        return $this->factory->newElement('col', func_get_args());
    }

    /**
     * Create a new root element 'colgroup'
     *
     * @return HTML_Fluent_XHTML_Element_COLGROUP
     */
    public function colgroup() {
        return $this->factory->newElement('colgroup', func_get_args());
    }

    /**
     * Create a new root element 'dd'
     *
     * @return HTML_Fluent_XHTML_Element_DD
     */
    public function dd() {
        return $this->factory->newElement('dd', func_get_args());
    }

    /**
     * Create a new root element 'del'
     *
     * @return HTML_Fluent_XHTML_Element_DEL
     */
    public function del() {
        return $this->factory->newElement('del', func_get_args());
    }

    /**
     * Create a new root element 'dfn'
     *
     * @return HTML_Fluent_XHTML_Element_DFN
     */
    public function dfn() {
        return $this->factory->newElement('dfn', func_get_args());
    }

    /**
     * Create a new root element 'div'
     *
     * @return HTML_Fluent_XHTML_Element_DIV
     */
    public function div() {
        return $this->factory->newElement('div', func_get_args());
    }

    /**
     * Create a new root element 'dl'
     *
     * @return HTML_Fluent_XHTML_Element_DL
     */
    public function dl() {
        return $this->factory->newElement('dl', func_get_args());
    }

    /**
     * Create a new root element 'dt'
     *
     * @return HTML_Fluent_XHTML_Element_DT
     */
    public function dt() {
        return $this->factory->newElement('dt', func_get_args());
    }

    /**
     * Create a new root element 'em'
     *
     * @return HTML_Fluent_XHTML_Element_EM
     */
    public function em() {
        return $this->factory->newElement('em', func_get_args());
    }

    /**
     * Create a new root element 'fieldset'
     *
     * @return HTML_Fluent_XHTML_Element_FIELDSET
     */
    public function fieldset() {
        return $this->factory->newElement('fieldset', func_get_args());
    }

    /**
     * Create a new root element 'form'
     *
     * @return HTML_Fluent_XHTML_Element_FORM
     */
    public function form() {
        return $this->factory->newElement('form', func_get_args());
    }

    /**
     * Create a new root element 'h1'
     *
     * @return HTML_Fluent_XHTML_Element_H1
     */
    public function h1() {
        return $this->factory->newElement('h1', func_get_args());
    }

    /**
     * Create a new root element 'h2'
     *
     * @return HTML_Fluent_XHTML_Element_H2
     */
    public function h2() {
        return $this->factory->newElement('h2', func_get_args());
    }

    /**
     * Create a new root element 'h3'
     *
     * @return HTML_Fluent_XHTML_Element_H3
     */
    public function h3() {
        return $this->factory->newElement('h3', func_get_args());
    }

    /**
     * Create a new root element 'h4'
     *
     * @return HTML_Fluent_XHTML_Element_H4
     */
    public function h4() {
        return $this->factory->newElement('h4', func_get_args());
    }

    /**
     * Create a new root element 'h5'
     *
     * @return HTML_Fluent_XHTML_Element_H5
     */
    public function h5() {
        return $this->factory->newElement('h5', func_get_args());
    }

    /**
     * Create a new root element 'h6'
     *
     * @return HTML_Fluent_XHTML_Element_H6
     */
    public function h6() {
        return $this->factory->newElement('h6', func_get_args());
    }

    /**
     * Create a new root element 'head'
     *
     * @return HTML_Fluent_XHTML_Element_HEAD
     */
    public function head() {
        return $this->factory->newElement('head', func_get_args());
    }

    /**
     * Create a new root element 'hr'
     *
     * @return HTML_Fluent_XHTML_Element_HR
     */
    public function hr() {
        return $this->factory->newElement('hr', func_get_args());
    }

    /**
     * Create a new root element 'html'
     *
     * @return HTML_Fluent_XHTML_Element_HTML
     */
    public function html() {
        return $this->factory->newElement('html', func_get_args());
    }

    /**
     * Create a new root element 'i'
     *
     * @return HTML_Fluent_XHTML_Element_I
     */
    public function i() {
        return $this->factory->newElement('i', func_get_args());
    }

    /**
     * Create a new root element 'img'
     *
     * @return HTML_Fluent_XHTML_Element_IMG
     */
    public function img() {
        return $this->factory->newElement('img', func_get_args());
    }

    /**
     * Create a new root element 'input'
     *
     * @return HTML_Fluent_XHTML_Element_INPUT
     */
    public function input() {
        return $this->factory->newElement('input', func_get_args());
    }

    /**
     * Create a new root element 'ins'
     *
     * @return HTML_Fluent_XHTML_Element_INS
     */
    public function ins() {
        return $this->factory->newElement('ins', func_get_args());
    }

    /**
     * Create a new root element 'kbd'
     *
     * @return HTML_Fluent_XHTML_Element_KBD
     */
    public function kbd() {
        return $this->factory->newElement('kbd', func_get_args());
    }

    /**
     * Create a new root element 'label'
     *
     * @return HTML_Fluent_XHTML_Element_LABEL
     */
    public function label() {
        return $this->factory->newElement('label', func_get_args());
    }

    /**
     * Create a new root element 'legend'
     *
     * @return HTML_Fluent_XHTML_Element_LEGEND
     */
    public function legend() {
        return $this->factory->newElement('legend', func_get_args());
    }

    /**
     * Create a new root element 'li'
     *
     * @return HTML_Fluent_XHTML_Element_LI
     */
    public function li() {
        return $this->factory->newElement('li', func_get_args());
    }

    /**
     * Create a new root element 'link'
     *
     * @return HTML_Fluent_XHTML_Element_LINK
     */
    public function link() {
        return $this->factory->newElement('link', func_get_args());
    }

    /**
     * Create a new root element 'map'
     *
     * @return HTML_Fluent_XHTML_Element_MAP
     */
    public function map() {
        return $this->factory->newElement('map', func_get_args());
    }

    /**
     * Create a new root element 'meta'
     *
     * @return HTML_Fluent_XHTML_Element_META
     */
    public function meta() {
        return $this->factory->newElement('meta', func_get_args());
    }

    /**
     * Create a new root element 'noscript'
     *
     * @return HTML_Fluent_XHTML_Element_NOSCRIPT
     */
    public function noscript() {
        return $this->factory->newElement('noscript', func_get_args());
    }

    /**
     * Create a new root element 'object'
     *
     * @return HTML_Fluent_XHTML_Element_OBJECT
     */
    public function object() {
        return $this->factory->newElement('object', func_get_args());
    }

    /**
     * Create a new root element 'ol'
     *
     * @return HTML_Fluent_XHTML_Element_OL
     */
    public function ol() {
        return $this->factory->newElement('ol', func_get_args());
    }

    /**
     * Create a new root element 'optgroup'
     *
     * @return HTML_Fluent_XHTML_Element_OPTGROUP
     */
    public function optgroup() {
        return $this->factory->newElement('optgroup', func_get_args());
    }

    /**
     * Create a new root element 'option'
     *
     * @return HTML_Fluent_XHTML_Element_OPTION
     */
    public function option() {
        return $this->factory->newElement('option', func_get_args());
    }

    /**
     * Create a new root element 'p'
     *
     * @return HTML_Fluent_XHTML_Element_P
     */
    public function p() {
        return $this->factory->newElement('p', func_get_args());
    }

    /**
     * Create a new root element 'param'
     *
     * @return HTML_Fluent_XHTML_Element_PARAM
     */
    public function param() {
        return $this->factory->newElement('param', func_get_args());
    }

    /**
     * Create a new root element 'pre'
     *
     * @return HTML_Fluent_XHTML_Element_PRE
     */
    public function pre() {
        return $this->factory->newElement('pre', func_get_args());
    }

    /**
     * Create a new root element 'q'
     *
     * @return HTML_Fluent_XHTML_Element_Q
     */
    public function q() {
        return $this->factory->newElement('q', func_get_args());
    }

    /**
     * Create a new root element 'samp'
     *
     * @return HTML_Fluent_XHTML_Element_SAMP
     */
    public function samp() {
        return $this->factory->newElement('samp', func_get_args());
    }

    /**
     * Create a new root element 'script'
     *
     * @return HTML_Fluent_XHTML_Element_SCRIPT
     */
    public function script() {
        return $this->factory->newElement('script', func_get_args());
    }

    /**
     * Create a new root element 'select'
     *
     * @return HTML_Fluent_XHTML_Element_SELECT
     */
    public function select() {
        return $this->factory->newElement('select', func_get_args());
    }

    /**
     * Create a new root element 'small'
     *
     * @return HTML_Fluent_XHTML_Element_SMALL
     */
    public function small() {
        return $this->factory->newElement('small', func_get_args());
    }

    /**
     * Create a new root element 'span'
     *
     * @return HTML_Fluent_XHTML_Element_SPAN
     */
    public function span() {
        return $this->factory->newElement('span', func_get_args());
    }

    /**
     * Create a new root element 'strong'
     *
     * @return HTML_Fluent_XHTML_Element_STRONG
     */
    public function strong() {
        return $this->factory->newElement('strong', func_get_args());
    }

    /**
     * Create a new root element 'style'
     *
     * @return HTML_Fluent_XHTML_Element_STYLE
     */
    public function style() {
        return $this->factory->newElement('style', func_get_args());
    }

    /**
     * Create a new root element 'sub'
     *
     * @return HTML_Fluent_XHTML_Element_SUB
     */
    public function sub() {
        return $this->factory->newElement('sub', func_get_args());
    }

    /**
     * Create a new root element 'sup'
     *
     * @return HTML_Fluent_XHTML_Element_SUP
     */
    public function sup() {
        return $this->factory->newElement('sup', func_get_args());
    }

    /**
     * Create a new root element 'table'
     *
     * @return HTML_Fluent_XHTML_Element_TABLE
     */
    public function table() {
        return $this->factory->newElement('table', func_get_args());
    }

    /**
     * Create a new root element 'tbody'
     *
     * @return HTML_Fluent_XHTML_Element_TBODY
     */
    public function tbody() {
        return $this->factory->newElement('tbody', func_get_args());
    }

    /**
     * Create a new root element 'td'
     *
     * @return HTML_Fluent_XHTML_Element_TD
     */
    public function td() {
        return $this->factory->newElement('td', func_get_args());
    }

    /**
     * Create a new root element 'textarea'
     *
     * @return HTML_Fluent_XHTML_Element_TEXTAREA
     */
    public function textarea() {
        return $this->factory->newElement('textarea', func_get_args());
    }

    /**
     * Create a new root element 'tfoot'
     *
     * @return HTML_Fluent_XHTML_Element_TFOOT
     */
    public function tfoot() {
        return $this->factory->newElement('tfoot', func_get_args());
    }

    /**
     * Create a new root element 'th'
     *
     * @return HTML_Fluent_XHTML_Element_TH
     */
    public function th() {
        return $this->factory->newElement('th', func_get_args());
    }

    /**
     * Create a new root element 'thead'
     *
     * @return HTML_Fluent_XHTML_Element_THEAD
     */
    public function thead() {
        return $this->factory->newElement('thead', func_get_args());
    }

    /**
     * Create a new root element 'title'
     *
     * @return HTML_Fluent_XHTML_Element_TITLE
     */
    public function title() {
        return $this->factory->newElement('title', func_get_args());
    }

    /**
     * Create a new root element 'tr'
     *
     * @return HTML_Fluent_XHTML_Element_TR
     */
    public function tr() {
        return $this->factory->newElement('tr', func_get_args());
    }

    /**
     * Create a new root element 'tt'
     *
     * @return HTML_Fluent_XHTML_Element_TT
     */
    public function tt() {
        return $this->factory->newElement('tt', func_get_args());
    }

    /**
     * Create a new root element 'ul'
     *
     * @return HTML_Fluent_XHTML_Element_UL
     */
    public function ul() {
        return $this->factory->newElement('ul', func_get_args());
    }


}
